#ifndef TDADNS_H_INCLUDED
#define TDADNS_H_INCLUDED

/*Este TDA simula el funcionamiento de un Domain Name Server (DNS) */

#include "AB.h"
#include "cola.h"

#define MAX_LOG_SIZE 100

/*Definicion del tipo de dato*/
typedef struct {
    TAB estructura;
    TCola log;
} TDADNS;

/* Descripción: Crea una instancia de TDA DNS.
 * Precondiciones: dns tiene sizeof(TDADNS) bytes reservados. dns no creado.
 *                 tamDato es el tamaño del tipo de dato T que tendria los elementos que se van
 *                 a guardar asociados a un dominio.
 * Postcondiciones: Se inicializó la estructura apuntada por dns.
 */
int crearDNS(TDADNS *dns, size_t tamDato);

/* Descripción: Destruye una instancia de TDA DNS.
 * Precondiciones: dns creado y vacıo.
 * Postcondiciones: Se destruyó la instancia dns
 */
void destruirDNS(TDADNS *dns);


#endif // TDADNS_H_INCLUDED
